package com.isoft.c2team3service2.service;

import java.time.LocalDateTime;

public interface MountingService {
    /**
     * 原有方法：保留（可用于单个艺人的基础时间差计算）
     * @param name 标识（如艺人ID）
     * @return 时间差（分钟）
     */
    long mounting(String name);

    /**
     * 新增：记录艺人访问指定接口的时间到Redis
     * @param interfaceKey 接口唯一标识（如“posts:1”，对应/posts/1接口）
     * @param artistId 艺人ID（从UserDTO获取）
     */
//    void recordArtistInterfaceAccess(String interfaceKey, Integer artistId);

    /**
     * 新增：校验指定接口是否已被艺人访问过
     * @param interfaceKey 接口唯一标识
     * @param artistId 艺人ID
     * @return true=已访问，false=未访问
     */
//    boolean checkArtistAccessed(String interfaceKey, Integer artistId);

    /**
     * 新增：计算普通用户与艺人访问同一接口的时间差
     * @param interfaceKey 接口唯一标识
     * @param artistId 艺人ID
     * @return 时间差（分钟）；艺人未访问返回-1，顺序颠倒返回-2
     */
//    long calculateInterfaceTimeDiff(String interfaceKey, Integer artistId);

    // 新增：获取艺人访问时间字符串
//    String getArtistAccessTime(String interfaceKey, Integer artistId);
}